Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Wheels: ADIOS2 v2.10.1 #1554

Merged
merged 22 commits into from
Oct 8, 2024
Merged

Wheels: ADIOS2 v2.10.1 #1554

merged 22 commits into from
Oct 8, 2024

Conversation

ax3l
Copy link
Member

@ax3l ax3l commented Nov 7, 2023

Build wheels with ADIOS2 v2.9.2+, which fixes c-blosc2 issues with null-blocks.
Build with 2.10.0, which fixes static builds with ADIOS2 & c-blosc2 on Windows.

Note: since we do not bump the version of the already released 0.15.2 release, this will not create new wheels. Once we publish 0.15.3, this will be included.

Note: ADIOS2 BP5 supports will be available for Windows with the ADIOS 2.10+ release series.

Build wheels with ADIOS2 v2.9.2, which fixes c-blosc2 issues with
null-blocks.
@ax3l
Copy link
Member Author

ax3l commented Dec 1, 2023

@vicentebolea can you help me with this all-static deployment of ADIOS 2.9.2? It is related to the upstream issues I opened :)

@ax3l
Copy link
Member Author

ax3l commented Dec 1, 2023

Does BP5 not work on Windows for ADIOS2 2.9.2?

# BP5
if(ADIOS2_USE_BP5 AND NOT WIN32)
  set(ADIOS2_HAVE_BP5 TRUE)
endif()

We want to switch our default output to BP5 after our last discussion w/ @pnorbert :) Serial read support would be awesome on any platform :)

Update: confirmed, will be part of the ADIOS2 v2.10 release series (already in ADIOS2 development branch).

library_builders.bat Outdated Show resolved Hide resolved
@ax3l
Copy link
Member Author

ax3l commented Jan 30, 2024

ADIOS 2.10.0-rc1 on Windows:

2024-01-30T18:43:37.2016284Z   adios2_c_variable.cpp
2024-01-30T18:43:37.4167988Z LINK : fatal error LNK1104: cannot open file 'ffi.lib' [D:\a\openPMD-api\openPMD-api\src\build-adios2\source\utils\bpls.vcxproj]
2024-01-30T18:43:37.4954992Z   main.cpp
2024-01-30T18:43:38.2227279Z   Reorganize.cpp
2024-01-30T18:43:38.2323129Z   adios2_c_attribute.cpp
2024-01-30T18:43:38.5659633Z   IO.cpp
2024-01-30T18:43:39.1746622Z   adios2_c_operator.cpp
2024-01-30T18:43:39.4554626Z   Utils.cpp
2024-01-30T18:43:39.6007589Z   Operator.cpp
2024-01-30T18:43:39.9410487Z   Generating Code...
2024-01-30T18:43:40.0518750Z   Generating Code...
2024-01-30T18:43:40.3069063Z LINK : fatal error LNK1104: cannot open file 'ffi.lib' [D:\a\openPMD-api\openPMD-api\src\build-adios2\source\utils\adios_reorganize.vcxproj]

ornladios/ADIOS2#4019

@franzpoeschel
Copy link
Contributor

I think I found the problem and it looks like a CMake bug. I was able to reproduce the same issue with CMake 3.23 on Windows (install Blosc2 and ADIOS2 statically --> try configuring openPMD-api with these dependencies). I checked the CMake scripts and they looked fine, so instead I upgraded to CMake 3.28, and that seems to work now.

@ax3l
Copy link
Member Author

ax3l commented Feb 27, 2024

Awesome!

Hm, CI installs CMake 3.28.1 already... Let me check if it picks up the right version.

@vicentebolea
Copy link

@vicentebolea Can I test a branch / RC for ADIOS2 2.10 already? :)

Current release_210 should have the fix for the windows static build

@ax3l
Copy link
Member Author

ax3l commented Mar 12, 2024

@vicentebolea thanks, I pushed to use release_210 and still see in an all-static build:

  • c-blosc2 static
  • adios2 static
  • openPMD-api static
  • openPMD-api Python module: shared

the same issue.

Snippet from the Windows CI in this PR:

2024-03-12T18:13:01.6247052Z   CMake Error at C:/Program Files (x86)/ADIOS2/lib/cmake/adios2/adios2-targets.cmake:79 (set_target_properties):
2024-03-12T18:13:01.6248634Z     The link interface of target "adios2::core" contains:
2024-03-12T18:13:01.6251135Z 
2024-03-12T18:13:01.6253673Z       Blosc2::blosc2_static
2024-03-12T18:13:01.6255673Z 
2024-03-12T18:13:01.6258466Z     but the target was not found.  Possible reasons include:
2024-03-12T18:13:01.6260527Z 
2024-03-12T18:13:01.6263217Z       * There is a typo in the target name.
2024-03-12T18:13:01.6265554Z       * A find_package call is missing for an IMPORTED target.
2024-03-12T18:13:01.6267457Z       * An ALIAS target is missing.
2024-03-12T18:13:01.6269395Z 
2024-03-12T18:13:01.6271796Z   Call Stack (most recent call first):
2024-03-12T18:13:01.6274492Z     C:/Program Files (x86)/ADIOS2/lib/cmake/adios2/adios2-config-common.cmake:198 (include)
2024-03-12T18:13:01.6277493Z     C:/Program Files (x86)/ADIOS2/lib/cmake/adios2/adios2-config.cmake:29 (include)
2024-03-12T18:13:01.6278618Z     CMakeLists.txt:443 (find_package)

@vicentebolea
Copy link

@ax3l can you try the 2.10.0-rc1 and when find_package(ADIOS2) add a CONFIG.

@vicentebolea
Copy link

Try this branch for fixing the windows build: ornladios/ADIOS2#4093

library_builders.bat Outdated Show resolved Hide resolved
Co-authored-by: Vicente Bolea <[email protected]>
@ax3l ax3l changed the title Wheels: ADIOS2 v2.9.2 Wheels: ADIOS2 v2.10.0 Mar 25, 2024
library_builders.bat Outdated Show resolved Hide resolved
library_builders.sh Outdated Show resolved Hide resolved
@ax3l ax3l changed the title Wheels: ADIOS2 v2.10.0 Wheels: ADIOS2 v2.10.1 May 31, 2024
library_builders.bat Outdated Show resolved Hide resolved
@ax3l ax3l mentioned this pull request Oct 8, 2024
2 tasks
@ax3l
Copy link
Member Author

ax3l commented Oct 8, 2024

32bit windows compiles of ADIOS2 v2.10.1 still fail, with an error both in EVPATH and in BP5: ornladios/ADIOS2#4105 (comment)

@ax3l ax3l merged commit 9a0b519 into openPMD:wheels Oct 8, 2024
7 of 9 checks passed
@ax3l ax3l deleted the wheels-adios2-2.9.2 branch October 8, 2024 17:04
ax3l added a commit that referenced this pull request Oct 11, 2024
WarpX CI still uses it.

x-ref: #1677 #1554
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants